/*
 * To change this template, choose Tools | Templates and open the template in
 * the editor.
 */
package view; 

import Model.Aluno;
import Model.AlunoDAO;
import javafx.collections.FXCollections;
import javafx.collections.ObservableList;
import javafx.event.ActionEvent;
import javafx.event.EventHandler;
import javafx.scene.Group;
import javafx.scene.Node;
import javafx.scene.control.*;
import javafx.scene.control.cell.PropertyValueFactory;
import javafx.scene.image.Image;
import javafx.scene.image.ImageView;
import javafx.scene.layout.VBox;
import javafx.scene.text.Font;


/**
 *
 * @author GIOVANI
 */
class TelaInicial {
    AlunoDAO dao = new AlunoDAO();


     Node criaTela() {

        Group grupoAll = new Group();
        VBox ladoEsquerdo = new VBox();
        VBox ladoDireito = new VBox();

        Button botao = new Button("Ver Todos");
        botao.setTranslateX(410);
        botao.setTranslateY(70);
        
        //label
        Label bem = new Label("Bem vindo a Escola Constuir");
        bem.setFont(new Font("Arial", 20));
        
        //String url = "src/images/logoEscola.png";
        ImageView logo = new ImageView( new Image(TelaInicial.class.getResourceAsStream("./images/logoEscola.png"), 300, 120, false, true));
        
        ladoEsquerdo.getChildren().addAll(bem, logo, criaMenuTurma());
        ladoEsquerdo.setSpacing(10);
        ladoEsquerdo.setTranslateX(15);
        ladoEsquerdo.setTranslateY(15);
       // ladoDireito.getChildren().addAll(criaMenuProfessores(), botao);

        grupoAll.getChildren().addAll(ladoEsquerdo, ladoDireito);

        return grupoAll;
    }

    private Node criaMenuTurma() {
        Accordion menuTurma = new Accordion();

        TitledPane turmas = new TitledPane();
        turmas.setText("Alunos");
        VBox tb = new VBox();
        Button refresh = new Button("Atualizar");

TableColumn matricula = new TableColumn();
                matricula.setText("Matricula");
                matricula.setCellValueFactory(new PropertyValueFactory<Aluno, Integer>("matricula"));
            TableColumn nome = new TableColumn();
                nome.setText("Nome");
                nome.setCellValueFactory(new PropertyValueFactory<Aluno, String>("nome"));
            TableColumn idade = new TableColumn();
                idade.setText("Idade");           
                idade.setCellValueFactory(new PropertyValueFactory<Aluno, Integer>("idade"));
            TableColumn sexo = new TableColumn();
                sexo.setText("Sexo");
                sexo.setCellValueFactory(new PropertyValueFactory<Aluno, String>("sexo"));
            TableColumn cpf = new TableColumn();
                cpf.setText("CPF");           
                cpf.setCellValueFactory(new PropertyValueFactory<Aluno, String>("cpf"));
            TableColumn cep = new TableColumn();
                cep.setText("CEP");
                cep.setCellValueFactory(new PropertyValueFactory<Aluno, String>("cep"));
            TableColumn bairro = new TableColumn();
                bairro.setText("Bairro");
                bairro.setCellValueFactory(new PropertyValueFactory<Aluno, String>("bairro"));
            
                
            final ObservableList<Aluno> data = FXCollections.observableArrayList(dao.findAll());
            
            TableView tabela = new TableView();        
            tabela.getColumns().addAll(matricula, nome, idade, sexo, cpf, cep, bairro);
            tabela.setItems(data);            
            tabela.setMaxHeight(200);
        
        turmas.setContent(tabela);
        menuTurma.getPanes().add(turmas);
        menuTurma.setTranslateX(10);
        menuTurma.setTranslateY(50);
        menuTurma.setMaxWidth(400);
        
        refresh.setOnAction(new EventHandler<ActionEvent>(){

            @Override
            public void handle(ActionEvent t) {
                          
                data.clear();
                data.addAll(dao.findAll());
            }
       });
        
        refresh.setTranslateX(10);
        refresh.setTranslateY(50);
        
        tb.getChildren().addAll(menuTurma, refresh);
        tb.setSpacing(20);
        

        return tb;

    }

    /*private Node criaMenuProfessores() {
        Accordion menuProfessores = new Accordion();

        TitledPane professores = new TitledPane();
        professores.setText("Professores");
      
        //tabela para professorFX
        final ObservableList<Professor> data_pro = FXCollections.observableArrayList(
                new Professor("Giovani", 2020002),
                new Professor("Lukas", 200010),
                new Professor("Teste", 299182)    
        );


        //Colunas para professores
        TableColumn nome = new TableColumn();
        nome.setText("Nome");
        nome.setCellValueFactory(new PropertyValueFactory<Professor, String>("nome"));
        TableColumn sobreNome = new TableColumn();
        sobreNome.setText("Matricula");
        sobreNome.setCellValueFactory(new PropertyValueFactory<Professor, Integer>("matricula"));
        /*TableColumn email = new TableColumn();
        email.setText("Email");
        email.setMinWidth(200);
        email.setCellValueFactory(new PropertyValueFactory("email Professor"));
        
        
        
        //table view professor
        TableView tableView_pro = new TableView();
        tableView_pro.setItems(data_pro);
        tableView_pro.getColumns().addAll(nome, sobreNome);//, email);

        //menu professores
        
        professores.setContent(tableView_pro);
        menuProfessores.getPanes().add(professores);
        menuProfessores.setTranslateX(410);
        menuProfessores.setTranslateY(50);
        menuProfessores.setMaxWidth(400);

        return menuProfessores;
    }*/
}
